Home  -  Game Description  -  How to Play  -  Units  -  Screen Shots  -  Gallery  -  Downloads  -  Tech Info






The Intro State will be used to show some kind of introdunction to the game. This can be, but is not limmited to a movie or a company logo. The program will just go through this state once because the introdunction should not repeat.

At the end of this state, all visuals will be removed and the State variable will be incremented to State 1.



The Menu State will allow the user to set different options. At each new version of the game more options can be added, but the starting options will simply be to start a new game or to quit. When the game will be in its final verion stage, the menues will be complex and will allow users to save their progress and reload it at a later date. At that time, the menues will also allow users to connect to a server and select a human opponent.

At the end of this state, all visuals of the menues will be removed. If the player wished to quit the game, the application will end. If the player wished to battle an opponent, the State will be incremented by one and an initialization function will be called to create the game board and the game units. A data structure will be passed to that function and will represent the units on the board so that the function can create those units at their proper locations.



The Logic State is the most important state of the game. This is the state that the game will be in during each battle. The state will keep track of all units and will allow users to control those units. The logic state will figure out proper unit movement and their proper attack. It will make desisions reguarding unit blocking, unit taking damage, and reguarding unit death. This is the state that will declare one player the winner and the other player the loser of each match.

At the end of this state, two things can happen. First, if the next state is the Unit Animation State, a data structure will be constructed. This data structure will be a double-linked list representing all animations that the Unit Animation State must play. Nothing will be removed and all logic control will be halted until the Unit Animation State completes the given animations. Second, if one user has won the battle or if another user has surrendered, the battle must come to an end. In this situation, all created data structures shall be deleted, all visuals should be cleared, and the state should be set back to the Menu State.



The Unit Animation State is used to help the Logic State do all the animations. Durring this state, the program looks at a double-linked list that tells it what animations to play and on what units to play them on. At this time, the user can still move the mouse, but the inputs of the mouse or the keyboard are not checked. This state will be entered very often, but for very short periods of time. It is responsible for all animations and all special effects in the game.

At the end of this state, the double-linked list should be empty and the state should simply be set to the Logic State.